bitkeeper revision 1.1270 (4252512ac0wYfwuooQQQtJXNMsj5cQ)
authormafetter@fleming.research <mafetter@fleming.research>
Tue, 5 Apr 2005 08:49:46 +0000 (08:49 +0000)
committermafetter@fleming.research <mafetter@fleming.research>
Tue, 5 Apr 2005 08:49:46 +0000 (08:49 +0000)
Cleanup after merge

Signed-off-by: michael.fetterman@cl.cam.ac.uk
xen/arch/x86/mm.c
xen/arch/x86/shadow.c
xen/include/asm-x86/mm.h

index 54fde45fa221a04d5b6ede6a6887459ed4c818d5..14c2de1bb6822fc8708e380af9d612bafb3d8e2b 100644 (file)
@@ -2683,7 +2683,7 @@ int ptwr_do_page_fault(struct domain *d, unsigned long addr)
     int              which;
     u32              l2_idx;
 
-    if ( unlikely(shadow_mode_enabled(ed->domain)) )
+    if ( unlikely(shadow_mode_enabled(d)) )
         return 0;
 
     /*
index d0adbdba450f059cc2d4bd4ce295f6832eeb3a33..1d317f343386e3d0056ac9f0c456ed9477cabd4d 100644 (file)
@@ -583,6 +583,11 @@ void shadow_mode_init(void)
 {
 }
 
+int _shadow_mode_enabled(struct domain *d)
+{
+    return shadow_mode_enabled(d);
+}
+
 static void alloc_monitor_pagetable(struct exec_domain *ed)
 {
     unsigned long mmfn;
@@ -2623,21 +2628,7 @@ static int check_l1_table(
     // thus potentially out-of-sync) guest page.
     //
     if ( VM_ASSIST(d, VMASST_TYPE_writable_pagetables) )
-    {
-        int cpu = current->processor;
-
-        for ( i = 0; i < ARRAY_SIZE(ptwr_info->ptinfo); i++)
-        {
-            if ( ptwr_info[cpu].ptinfo[i].l1va &&
-                 ((v2m(ptwr_info[cpu].ptinfo[i].pl1e) >> PAGE_SHIFT) == gmfn) )
-            {
-                unsigned long old = gmfn;
-                gmfn = (v2m(ptwr_info[cpu].ptinfo[i].page) >> PAGE_SHIFT);
-                printk("hit1 ptwr_info[%d].ptinfo[%d].l1va, mfn=0x%08x, snapshot=0x%08x\n",
-                       cpu, i, old, gmfn);
-            }
-        }
-    }
+        BUG();
 
     if ( page_out_of_sync(pfn_to_page(gmfn)) )
     {
index 7ac0b37ea15445bc02c9d5f4faae7c3daa9ee84d..62260c19df157eca5dc153bb3a45ef239a135bf8 100644 (file)
@@ -4,8 +4,8 @@
 
 #include <xen/config.h>
 #include <xen/list.h>
-#include <xen/sched.h>
 #include <asm/io.h>
+#include <asm/uaccess.h>
 
 /*
  * Per-page-frame information.
@@ -150,6 +150,7 @@ extern void invalidate_shadow_ldt(struct exec_domain *d);
 extern int shadow_remove_all_write_access(
     struct domain *d, unsigned long gpfn, unsigned long gmfn);
 extern u32 shadow_remove_all_access( struct domain *d, unsigned long gmfn);
+extern int _shadow_mode_enabled(struct domain *d);
 
 static inline void put_page(struct pfn_info *page)
 {
@@ -181,12 +182,9 @@ static inline int get_page(struct pfn_info *page,
              unlikely((nx & PGC_count_mask) == 0) || /* Count overflow? */
              unlikely(d != _domain) )                /* Wrong owner? */
         {
-            if ( !domain->arch.shadow_mode )
-                DPRINTK("Error pfn %p: rd=%p(%d), od=%p(%d), caf=%08x, "
-                        "taf=%08x\n",
-                        page_to_pfn(page), domain, (domain ? domain->id : -1),
-                        page_get_owner(page),
-                        (page_get_owner(page) ? page_get_owner(page)->id : -1),
+            if ( !_shadow_mode_enabled(domain) )
+                DPRINTK("Error pfn %p: rd=%p, od=%p, caf=%08x, taf=%08x\n",
+                        page_to_pfn(page), domain, unpickle_domptr(d),
                         x, page->u.inuse.type_info);
             return 0;
         }